js的replace()方法实现全部替换

您所在的位置:网站首页 js 特殊字符替换 js的replace()方法实现全部替换

js的replace()方法实现全部替换

2023-08-20 05:33| 来源: 网络整理| 查看: 265

1、replace()

JS 字符串有replace() 方法。但这个方法只会对匹配到的第一个字串替换。

str.replace("word","Excel") 2、如果要全部替换的话,JS 没有提供replaceAll这样的方法。

(1)使用正则表达式可以达成Replace 的效果:

str.replace(/word/g,"Excel")

g 的意义是:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

(2)以上写法有个类同的写法:

str.replace(new RegExp("word","gm"),"Excel") **g** 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 **m** 执行多行匹配。 注意:#####在使用正则表达式时,如果要替换的字符串中包含特殊字符,需要使用转义字符。

例如:要将如下字符串中的“$”替换为换行符时,要使用转义字符。

var a="检查日期:20170102;检查医院:中山;检查项目:CT^&^ 检查日期:20170104;检查医院:中山;检查项目:CT^&^ 检查日期:20170115;检查医院:中山;检查项目:CT^&^ 检查日期:20170121;检查医院:中山;检查项目:CT" alert(a.replace(/\^&\^/g,"")); 3、除此之外,也可以添加 Stirng对象的原型方法: String.prototype.replaceAll = function(s1,s2){    return this.replace(new RegExp(s1,"gm"),s2); }

这样就可以像使用replace 方法一样使用replaceAll了

str.replaceAll("word","Excel"); 正则表达式特殊字符 特别字符 说明 $ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字符本身,请使用 $。 ( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。 * 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 *。 + 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +。 . 匹配除换行符 \n之外的任何单字符。要匹配 .,请使用 \。 [ ] 标记一个中括号表达式的开始。要匹配 [,请使用 [。 ? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 ?。 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n' 匹配字符 ‘n'。'\n' 匹配换行符。序列 ‘\' 匹配 “\”,而 ‘(' 则匹配 “(”。 ^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 ^。 { } 标记限定符表达式的开始。要匹配 {,请使用 {。 | 指明两项之间的一个选择。要匹配 |,请使用 |。


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3